#ifndef word_h
#define word_h

#include "font.h"

class window;

class word
{
private:
    static void draw_lattice(window *win, uint16_t x, uint16_t y, uint16_t width, uint16_t height, const uint8_t *data, uint32_t color);
    static uint16_t draw_single_char(window *win, uint32_t utf8, uint16_t x, uint16_t y, const font_information *font, uint32_t color);
    static lattice *get_lattice(const font_information *font, uint32_t utf8);
    static uint16_t get_utf8(const char *word, uint32_t &utf8);

public:
    static void draw_string(window *win, const char *string, uint16_t x, uint16_t y, uint32_t color = 0xffffffff, font_information const *font = &default_font);
};

#endif